﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RMS.Model
{
    public enum ExpenseType
    {
        Workforce,
        Mobility,
        Logistics
    }

    public class Expense
    {
        private int _expenseId;
        private double _expenseValue;
        private string _expenseDescription;
        private ExpenseType _expenseType;

        public Expense(int id, double value, string description, ExpenseType type)
        {
            this._expenseId = id;
            this._expenseValue = value;
            this._expenseDescription = description;
            this._expenseType = type;
        }

        public int Id
        {
            get { return this._expenseId; }
            set { this._expenseId = value; }
        }
        public double Value
        {
            get { return this._expenseValue; }
            set { this._expenseValue = value; }
        }
        public string Description
        {
            get { return this._expenseDescription; }
            set { this._expenseDescription = value; }
        }
        public ExpenseType Type
        {
            get { return this._expenseType; }
            set { this._expenseType = value; }
        }
    }

    public class Budget
    {
        private int _budgetId;
        private List<Expense> _expenseList;

        public Budget(int id)
        {
            this._budgetId = id;
            this._expenseList = new List<Expense>();
        }

        public int Id
        {
            get { return this._budgetId; }
            set { this._budgetId = value; }
        }
        public List<Expense> Items
        {
            get { return this._expenseList; }
            set { this._expenseList = value; }
        }
    }
}
